Warning: mkdir(): No space left on device in /var/www/tg-me/post.php on line 37

Warning: file_put_contents(aCache/aDaily/post/orgprog/--): Failed to open stream: No such file or directory in /var/www/tg-me/post.php on line 50
Организованное программирование | Кирилл Мокевнин | Telegram Webview: orgprog/329 -
Telegram Group & Telegram Channel
ООП (неочевидные плюсы)

По следам последнего видео. У ООПшных языков, есть одна киллер фича и одно удобство, которые редко встречаются в других местах. Сейчас будет шок 🙂

Если у вас структура вызова сущность.метод, вы получаете автокомплит. Если у вас вызов функция(данные), то хрен вам, а не автокомплит. Как вам такое? Является ли это фишкой ооп? Вообще-то нет, да так совпало что в ооп это повсеместно, но это всего лишь вопрос синтаксиса языка. Зацените пример на go:


type User struct {
Name string
}

func (u *User) Greet() {
fmt.Println("Hello,", u.Name)
}

func main() {
user := &User{Name: "Kirill"}
user.Greet() // автокомплит: .Greet
}


И на nim


type User = object
name: string

proc greet(u: User) {.method.} =
echo "Hello, ", u.name

let user = User(name: "Kirill")
user.greet() # автокомплит есть


и rust через трейты:


struct User {
name: String,
}

// trait описан отдельно от User
trait Greet {
fn greet(&self);
}

impl Greet for User {
fn greet(&self) {
println!("Hello, {}", self.name);
}
}

fn main() {
let user = User { name: "Kirill".to_string() };
user.greet(); // автокомплит срабатывает!
}


Ну и аналог (хотя и через классы) это экстеншены в Swift, Kotlin и C#

Кстати это довольно интересно, многие ассоцириуют синтаксис сущность.метод() только с ООП, но как вы видите, это вообще не так.

p.s. А как вы думаете, какая вторая деталь, про которую я упомянул в начале поста ? 🙂

Ссылки: Телеграм | Youtube | VK



tg-me.com/orgprog/329
Create:
Last Update:

ООП (неочевидные плюсы)

По следам последнего видео. У ООПшных языков, есть одна киллер фича и одно удобство, которые редко встречаются в других местах. Сейчас будет шок 🙂

Если у вас структура вызова сущность.метод, вы получаете автокомплит. Если у вас вызов функция(данные), то хрен вам, а не автокомплит. Как вам такое? Является ли это фишкой ооп? Вообще-то нет, да так совпало что в ооп это повсеместно, но это всего лишь вопрос синтаксиса языка. Зацените пример на go:


type User struct {
Name string
}

func (u *User) Greet() {
fmt.Println("Hello,", u.Name)
}

func main() {
user := &User{Name: "Kirill"}
user.Greet() // автокомплит: .Greet
}


И на nim


type User = object
name: string

proc greet(u: User) {.method.} =
echo "Hello, ", u.name

let user = User(name: "Kirill")
user.greet() # автокомплит есть


и rust через трейты:


struct User {
name: String,
}

// trait описан отдельно от User
trait Greet {
fn greet(&self);
}

impl Greet for User {
fn greet(&self) {
println!("Hello, {}", self.name);
}
}

fn main() {
let user = User { name: "Kirill".to_string() };
user.greet(); // автокомплит срабатывает!
}


Ну и аналог (хотя и через классы) это экстеншены в Swift, Kotlin и C#

Кстати это довольно интересно, многие ассоцириуют синтаксис сущность.метод() только с ООП, но как вы видите, это вообще не так.

p.s. А как вы думаете, какая вторая деталь, про которую я упомянул в начале поста ? 🙂

Ссылки: Телеграм | Youtube | VK

BY Организованное программирование | Кирилл Мокевнин




Share with your friend now:
tg-me.com/orgprog/329

View MORE
Open in Telegram


Организованное программирование | Кирилл Мокевнин Telegram | DID YOU KNOW?

Date: |

NEWS: Telegram supports Facetime video calls NOW!

Secure video calling is in high demand. As an alternative to Zoom, many people are using end-to-end encrypted apps such as WhatsApp, FaceTime or Signal to speak to friends and family face-to-face since coronavirus lockdowns started to take place across the world. There’s another option—secure communications app Telegram just added video calling to its feature set, available on both iOS and Android. The new feature is also super secure—like Signal and WhatsApp and unlike Zoom (yet), video calls will be end-to-end encrypted.

Организованное программирование | Кирилл Мокевнин from ms


Telegram Организованное программирование | Кирилл Мокевнин
FROM USA